The present disclosure relates to software development and debugging for embedded systems.
In embedded system software development, referring to FIG. 1, a conventional debugging system 100 includes a host computer 110 (in most cases, a personal computer) which is connected to an embedded system 130 (i.e. target system) by two separate connections: an application connection 140 and a debugging data path. The embedded system is an emulator for the functions of an integrated circuit for which the application is being developed. The application connection 140 can be connected with a USB (Universal Serial Bus) interface. The debugging data path usually includes a standard interface 150 such as a parallel port, a serial port, or a USB connection on the host computer 110 and a proprietary interface such as JTAG, SPI, etc. on the embedded system 130. An interface unit 120 is therefore usually required between the host computer 110 and the embedded system 130 to convert from the standard interface 150 to the proprietary interface 160. The interface unit 120 is used even for the embedded systems that have USB interfaces because the USB interface is dedicated to the application data communication for software development and thus cannot be used for debugging purposes.
Therefore, there is a need for a simpler and more convenient way for software development and debugging for embedded systems.